using System;
using System.Collections.Generic;
using System.Text;
using System.Collections.ObjectModel;

namespace Rarous.TexyNet {
  public class Syntax : Collection<String> {

    public const string Blocks = "blocks";
    public const string BlockQuote = "blockquote";
    public const string Emoticon = "emoticon";
    public const string Figure = "figure";
    public const string HorizontalLine = "horizline";
    public const string Image = "image";
    public const string ImageDefinition = "image/definition";
    public const string List = "list";
    public const string ListDefinition = "list/definition";
    public const string LongWords = "longwords";
    public const string Script = "script";
    public const string Table = "table";
    public const string Typography = "typography";
    
    public static class Block {
      public const string Default = "block/default";
      public const string Pre = "block/pre";
      public const string Code = "block/code";
      public const string Html = "block/html";
      public const string Text = "block/text";
      public const string TexySource = "block/texysource";
      public const string Comment = "block/comment";
      public const string Div = "block/div";
    }

    public static class Heading {
      public const string Underlined = "heading/underlined";
      public const string Surrounded = "heading/surrounded";
    }

    public static class Html {
      public const string Tag = "html/tag";
      public const string Comment = "html/comment";
    }

    public static class Link {
      public const string Definition = "link/definition";
      public const string Reference = "link/reference";
      public const string Url = "link/url";
      public const string Email = "link/email";
    }

    public static class Phrase {
      public const string StrongEmphasis = "phrase/strong+em";
      public const string Strong = "phrase/strong";
      public const string Emphasis = "phrase/em";
      public const string EmphasisAlternative1 = "phrase/em-alt";
      public const string EmphasisAlternative2 = "phrase/em-alt2";
      public const string Inserted = "phrase/ins";
      public const string Deleted = "phrase/del";
      public const string Superscript = "phrase/sup";
      public const string SuperscriptAlternative = "phrase/sup-alt";
      public const string Subscript = "phrase/sub";
      public const string SubscriptAlternative = "phrase/sub-alt";
      public const string Span = "phrase/span";
      public const string SpanAlternative = "phrase/span-alt";
      public const string Cite = "phrase/cite";
      public const string Quote = "phrase/quote";
      public const string Acronym = "phrase/acronym";
      public const string NoTexy = "phrase/notexy";
      public const string Code = "phrase/code";
      public const string QuickLink = "phrase/quicklink";
    }
  }


}
